Aspectos a considerar para a especificação do requisito
-
Funcionalidade: O que o software deve fazer?
-
Interfaces: Como o software interage com as pessoas, o hardware do sistema, outros hardwares e softwares?
-
Desempenho: Qual é a velocidade, a disponibilidade, o tempo de resposta, o tempo de recuperação das várias funções
de software?
-
Atributos: Quais são as considerações de portabilidade, precisão, manutenção, segurança?
-
Restrições de design impostos em uma implementação: Estão em vigor padrões requeridos, linguagem de implementação,
políticas de integridade de banco de dados, limites de recursos, ambientes operacionais?
|
Verificar se existem requisitos que estão fora dos limites da especificação dos requisitos do software
Isso significa que a espeicificação de requisitos de software:
-
Deve definir corretamente todos os requisitos de software;
-
Não deve descrever nenhum detalhe de design ou implementação e
-
Não deve impor restrições adicionais quanto ao software.
|
Características fundamentais da especificação de requisitos de software
-
Correta: Todos os requisitos que devem ser atendidos pelo software estão especificados?
-
Sem ambiguidade: Cada requisito tem uma, e somente uma, interpretação? Foi utilizado o idioma do cliente?
Foram utilizados diagramas para ampliar as descrições no idioma nacional?
-
Completa: A especificação inclui todos os requisitos significativos, sejam relacionados a funcionalidade,
restrições de design de desempenho, atributos ou interfaces externas? Foram identificados e considerados os
intervalos de valores de entrada esperados em todos os cenários possíveis? As respostas foram incluídas em
valores de entrada válidos e inválidos? Todas as figuras, tabelas e diagramas incluem identificações, referências e
definições completas de todos os termos e unidades de medida?
-
Consistente: Esta especificação está em conformidade com outras especificações de nível superior? Ela é
consistente internamente e não apresenta nenhum conflito entre subconjuntos de requisitos individuais nela
descritos?
-
Capacidade de Posicionar Requisitos: Cada requisito foi ativado com um identificador para indicar a
importância ou estabilidade desse requisito específico? Foram identificados outros atributos significativos para se
determinar a prioridade corretamente?
-
Verificável: Todos os requisitos especificados são verificáveis? Existe algum processo econômico e eficaz
finito que uma pessoa ou máquina pode utilizar para verificar se o produto de software atende ao requisito?
-
Modificável: A estrutura e o estilo da especificação foram definidos de forma que quaisquer mudanças
nos requisitos possam ser feitas com facilidade, de maneira integral e consistente, ao mesmo tempo conservando a
estrutura e o estilo? A redundância foi identificada, minimizada e foi feita sua referência cruzada?
-
Rastreável: Cada requisito possui um identificador claro? A origem de cada requisito está clara? A
capacidade de rastrear a origem dos requisitos anteriores é mantida através de referência explícita a artefatos
anteriores? Foi mantido um nível razoável de rastreabilidade para os artefatos gerados pela especificação?
|
|